Skip to content

Remove last config package and move to root level package linting#4109

Open
JasonVMo wants to merge 8 commits intomainfrom
user/jasonvmo/repo-ops
Open

Remove last config package and move to root level package linting#4109
JasonVMo wants to merge 8 commits intomainfrom
user/jasonvmo/repo-ops

Conversation

@JasonVMo
Copy link
Copy Markdown
Contributor

@JasonVMo JasonVMo commented May 9, 2026

Platforms Impacted

  • configuration only

Description of changes

  • This moves the kit-config into scripts (which gets rid of the last dedicated config package)
  • lint-package is deprecated and no longer run package by package
  • There is now a lint-repo / lint-repo --fix command at the root which runs through the various repo wide linting operations. This takes ~4 seconds on my machine instead of the > 1 minute that the lint-package routine used to take.
  • Depcheck is replaced by a knip run from the root (in lint-repo)
  • package.json validation now runs during yarn constraints using the lint-package context.
  • align-deps runs from the root (previously blocked due to the extends bug I recently fixed)
  • format runs and will always run last in fix mode to clean up editing issues from the other tools
  • lint-lockfile runs as part of this as well

lintPackage is still present as some of the code in there will need to be moved over, but I will likely not keep all of it so that will be done later.

Verification

Automation

@JasonVMo JasonVMo requested a review from Saadnajmi May 11, 2026 01:08
Comment thread yarn.config.cjs
Comment on lines +1 to +12
const { defineConfig } = require('@yarnpkg/types');
const { constrain } = require('./scripts/src/index.ts');

module.exports = defineConfig({
constraints: async ({ Yarn }) => {
for (const workspace of Yarn.workspaces()) {
if (workspace.cwd !== '.') {
constrain(workspace);
}
}
},
});
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we add a comment to make it a little more obvious that instead of implementing constraints dirctly, we are using our helper package?

Comment on lines +41 to +47
const command = lintCommands[cmdName][key];
if (command) {
if (fix) {
if (!(await execCommand(cmdName, command))) {
return 1;
}
} else {
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It feels like this could be handled by Lage?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants